Memory objects may be created by various processes operating on a computer system, such as dynamic data that may be created in runtime environment. The runtime environment may be an operating environment that uses a just in time compiler to create native code using an intermediate language code. With each process that is created within the runtime environment, many of the same objects may be created independently for each process.
Large number of memory objects can cause some performance issues. If a device does not have a large amount of random access memory, memory paging systems may be used to store and retrieve data from a slower memory device, such as a hard disk.
Just in time compiled environments operate by creating executable code and other memory objects when an application is started or while an application is running. The executable code may be created by compiling the intermediate language code into native code that may be executable on a local processor. The compiling process causes the application to appear to take a long time to start up.